//
//  VistaSubcategoriasTienda.m
//  ProyectoMoviTiendas
//
//  Created by Daniel Paez on 3/8/12.
//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.
//

#import "VistaSubcategoriasTienda.h"
#import "SubcategoriaTienda.h"
#import "VistaProductos.h"
#import "Item.h"
#import "Producto.h"

@interface VistaSubcategoriasTienda ()
{
    NSArray * productosARetornar;
    SubcategoriaTienda * subcategSeleccionada;
}

@end

@implementation VistaSubcategoriasTienda

@synthesize subcategorias;

- (id)initWithStyle:(UITableViewStyle)style
{
    self = [super initWithStyle:style];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];

    // Uncomment the following line to preserve selection between presentations.
    // self.clearsSelectionOnViewWillAppear = NO;
 
    // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
    // self.navigationItem.rightBarButtonItem = self.editButtonItem;
}

- (void)viewDidUnload
{
    [super viewDidUnload];
    // Release any retained subviews of the main view.
    // e.g. self.myOutlet = nil;
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

#pragma mark - Table view data source

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    // Return the number of sections.
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{

    // Return the number of rows in the section.
    return [subcategorias count]+1;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    
    if (!cell)
    {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }
    // Configure the cell...

    
    if (![indexPath row])
    {
        cell.textLabel.text = @"Buscar en todas las subcategorías";
    }
    else {
        SubcategoriaTienda * subcategoria  = [subcategorias objectAtIndex:[indexPath row]-1];
        
        cell.textLabel.text = subcategoria.nombre;
    }
    
    cell.textLabel.font = [UIFont systemFontOfSize:18];
    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    return cell;
    
    // Configure the cell...
    
    return cell;
}

/*
// Override to support conditional editing of the table view.
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
    // Return NO if you do not want the specified item to be editable.
    return YES;
}
*/

/*
// Override to support editing the table view.
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        // Delete the row from the data source
        [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
    }   
    else if (editingStyle == UITableViewCellEditingStyleInsert) {
        // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
    }   
}
*/

/*
// Override to support rearranging the table view.
- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath
{
}
*/

/*
// Override to support conditional rearranging of the table view.
- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
{
    // Return NO if you do not want the item to be re-orderable.
    return YES;
}
*/

#pragma mark - Table view delegate

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    
    if(![indexPath row])
    {
        NSMutableArray * items;
        
        SubcategoriaTienda *subcategoria;
        
        for (int i = 0; i < subcategorias.count; i++)
        {
            subcategoria = [subcategorias objectAtIndex:i];
            if(i == 0)
            {
                items = [subcategoria darProductosConSoloItemsPropios];
            }
            else 
            {
                [items addObjectsFromArray:[subcategoria darProductosConSoloItemsPropios]];
            }
        }
 
        productosARetornar = items;
    }
    else
    {
        SubcategoriaTienda * subcat = [subcategorias objectAtIndex:[indexPath row]-1];
        productosARetornar = [subcat darProductosConSoloItemsPropios];
        subcategSeleccionada = subcat;
            
    }
    
    [self performSegueWithIdentifier:@"verProductos" sender: self];
}


- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    VistaProductos * vista = [segue destinationViewController];
    vista.productos = productosARetornar;
    if (subcategSeleccionada) {
    vista.title = subcategSeleccionada.nombre;
    }

    
}

@end
